package com.ayuer.chapter01;

import java.util.Arrays;

public class InsertSortDemo {
    public static void main(String[] args) {

        int[] arr = {5, 3, 2, 7, 8, 2, 10};
        //插入排序
        //第一个元素是有序的，不用排
        for (int i = 1; i < arr.length; i++) {

            //有序区域的最后元素指针
            int j = i - 1;
            //待插入的值
            int insertKey = arr[i];
            //寻找
            while (j >= 0 && arr[j] < insertKey) {
                //元素后移动
                arr[j + 1] = arr[j];
                j--;
            }
            //循环结束，后，j+1就是插入点
            arr[j + 1] = insertKey;
        }
        System.out.println(Arrays.toString(arr));
    }

}
